package com.nowcoder.community.repository;

import com.nowcoder.community.entity.DiscussPost;
import com.nowcoder.community.service.DisccusPostService;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

@Mapper
public interface DiscussPostMapper {
    // 分页查询帖子
    // userId=0 则不将 userId 作为查询条件
    List<DiscussPost> findDiscussPost(int userId, int offset, int limit, boolean orderByScore);

    // @Param
    // 1. 起别名
    // 2. userId 是动态条件并且是方法的唯一参数时，必须加上 @Param
    int findDiscussPostRows(@Param("userId") int userId);

    int insertDiscussPost(DiscussPost discussPost);

    DiscussPost selectDiscussPostById(int id);

    int updateCommentCount(int discussPostId, int commentCount);
    /**
     * 更新帖子类型
     * @param type 0-普通 1-置顶
     * */
    int updateType(int id, int type);

    /**
     * 更新状态
     * @param status 0-正常 1-精华 2-拉黑
     * */
    int updateStatus(int id, int status);


    /**
     * 更新帖子分数
     * */
    int updateScore(int id, double score);
}
